home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Cream of the Crop 1
/
Cream of the Crop 1.iso
/
UTILITY
/
TASEXAM6.ARJ
/
CHECKMY.TAS
< prev
next >
Wrap
Text File
|
1991-12-31
|
4KB
|
123 lines
{
SCRIPT : CHECKMY.TAS
Screen for various conditions and create a report with
BUY/SELL Signals
x day adx breakout
y day volume breakout
oscp buy/sell
roc buy/sell
RSI breakout
Author : Clay "grasshopper" Jones
Date : 12/31/91
}
#MAX_QUOTES 100
#OUTPUT_FILE CHECKMY.LST
MOV_PERIOD = 21; { MOV period}
ADX_DAYS = 10; { ADX breakout lookback period}
VOL_BREAKOUT_PERIOD = 30; { Volume breakout lookback period}
ROC_PERIOD = 14; { ROC period}
RSI_PERIOD = 14; { RSI period}
VOL_PERCENT = 300; { Percentage for VOLUME BREAKOUT}
{ Declare various arrays to hold the results of indicators }
MOV_A : ARRAY; { Place to save MOV}
ADX_A : ARRAY; { Place to save ADX}
VOL_A : ARRAY; { Place to save Volume Moving average}
ROC_A : ARRAY; { Place to save ROC}
RSI_A : ARRAY; { Place to save RSI }
MOV_A = MOV(C,MOV_BREAKOUT_PERIOD,'S');
VOL_A = MOV(V,VOL_BREAKOUT_PERIOD,'S');
{ Use ROC_PERIOD day as a percentage}
ROC_A = ROC(ROC,21,'%')
{ RSI_PERIOD Day RSI}
RSI_A = RSI(RSI_PERIOD);
MOV_BREAKOUT = 0;
ADX_BREAKOUT = 0;
VOL_BREAKOUT = 0;
ROC_BUY = 0;
ROC_SELL = 0;
RSI_BUY = 0;
RSI_SELL = 0;
if CLOSE OF TODAY IS GREATER THAN MOV_A OF YESTERDAY THEN
begin
MOV_BREAKOUT = 1;
end;
if ADX10 > 18
begin
ADX_BREAKOUT = 1;
end;
if VOLUME OF TODAY IS GREATER THAN
VOL_PERCENT/100 * VOL_A OF YESTERDAY THEN
begin
VOL_BREAKOUT = (VOLUME OF TODAY/VOL_A OF YESTERDAY) * 100;
end;
if ROC_A OF YESTERDAY IS LESS THAN OR EQUAL TO 0 AND
ROC_A OF YESTERDAY IS LESS THAN ROC_A OF YESTERDAY AND
ROC_A OF TODAY IS GREATER THAN ROC_A OF TODAY THEN
begin
ROC_BUY = 1;
end;
if ROC_A OF YESTERDAY IS GREATER THAN OR EQUAL TO 0 AND
ROC_A OF YESTERDAY IS GREATER THAN ROC_A OF YESTERDAY AND
ROC_A OF TODAY IS LESS THAN ROC_A OF TODAY THEN
begin
ROC_SELL = 1;
end;
if RSI_A of YESTERDAY IS LESS THAN OR EQUAL TO 30 AND
RSI_A OF TODAY IS GREATER THAN 30 THEN
begin
RSI_BUY = 1;
end;
if RSI_A of YESTERDAY IS GREATER THAN 70 and RSI_A of TODAY
IS LESS THAN 70 THEN
begin
RSI_SELL = 1;
end;
IF FIRST_TICKER THEN
begin
WRITELN(
' CURR PREV CURR ROC'
);
WRITELN(
'TICKER NAME CLOSE CLOSE ADX VOL% ROC RSI'
);
WRITELN(
'------------------------ ------- ------- ------- ------- ------- -------'
);
end;
IF MOV_BREAKOUT OR VOL_BREAKOUT OR ROC_BUY OR ROC_SELL OR
RSI_BUY OR RSI_SELL THEN
BEGIN
WRITELN(ticker,fullname,close, close of yesterday,
((volume/VOL_A[-1]))*100,'%%',roc_a,
RSI_A);
IF MOV_BREAKOUT THEN
WRITELN('\t\t* MOV BREAKOUT ABOVE ',
INT(MOV_BREAKOUT_PERIOD), ' DAY HIGH OF CLOSE');
IF VOL_BREAKOUT THEN
WRITELN('\t\t* VOLUME BREAKOUT ',VOL_BREAKOUT,
' PERCENT OVER LAST',
INT(VOL_BREAKOUT_PERIOD), ' DAYS');
IF ROC_BUY THEN
WRITELN('\t\t* ROC BUY');
IF ROC_SELL THEN
WRITELN('\t\t* ROC SELL');
IF RSI_BUY THEN
WRITELN('\t\t* RSI BUY');
IF RSI_SELL THEN
WRITELN('\t\t* RSI SELL');
END
{Martin,
While using your scan1.tas file as a prototype, I've attempted to create
a script. The buy conditions are as follows:
MOV>21MAVG
ADX>10PERIOD [unsure where to place value; I'd like ADX > 18.
VOL breakout over the past 30 days (300%)
ROC>0
RSI>30
D [unsure where to place value; I'd like ADX > 18.